fix(liveavatar): emit playback_finished on AudioSegmentEnd#4669
Conversation
…ekit#4668) Fixes issue where session.say() hangs when LiveAvatar is enabled. The _forward_audio loop now handles AudioSegmentEnd markers by calling notify_playback_finished, matching the pattern in AvatarRunner.
📝 WalkthroughWalkthroughAdded handling for Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: Organization UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
🧰 Additional context used📓 Path-based instructions (1)**/*.py📄 CodeRabbit inference engine (AGENTS.md)
Files:
🧠 Learnings (1)📚 Learning: 2026-01-30T12:53:12.738ZApplied to files:
🧬 Code graph analysis (1)livekit-plugins/livekit-plugins-liveavatar/livekit/plugins/liveavatar/avatar.py (2)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
🔇 Additional comments (2)
✏️ Tip: You can disable this entire section by setting Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
@tinalenguyen @chenghao-mou pls review |
tinalenguyen
left a comment
There was a problem hiding this comment.
lgtm, thank you for the PR!!
Fixes issue where session.say() hangs when LiveAvatar is enabled. The _forward_audio loop now handles AudioSegmentEnd markers by calling notify_playback_finished, matching the pattern in AvatarRunner.
fixes #4668
Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.